﻿/**
 * MainMenu-class is the first state shown in the game.
 *
 * Dina! Den här klassen är mer eller mindre copy-paste från tutorialens kod. Jag har ändrat om som jag har tänkt mig att kodstrukturen kommer att se ut.
 * De ändringar jag har gjort är att jag har ändrat om kodstrukturen så att allt som jag tänker mig ska finnas är förberett. Det som ska läggas till sen är
 * bild-adresser och koordinater, bara parametrar alltså. Bilderna måste självklart göras eller tankas sen.
 */

import org.lwjgl.input.Mouse;
import org.newdawn.slick.*;
import org.newdawn.slick.state.*;

public class Menu extends BasicGameState {

	private Image background;
	private Image playNow;
	private Image exitGame;

	private Image playHighlighted;
	private Image exitHighlighted;
	private boolean overPlay = false;
	private boolean overExit = false;

	public Menu(int state) {
	}

	public void init(GameContainer gc, StateBasedGame sbg)
			throws SlickException {
		background = new Image(
				"C:/Users/Dina/Documents/GameProject/pics/labyrint.jpg");
		playNow = new Image("C:/Users/Dina/Documents/GameProject/pics/play.png");
		exitGame = new Image(
				"C:/Users/Dina/Documents/GameProject/pics/exit.png");

		playHighlighted = new Image(
				"C:/Users/Dina/Documents/GameProject/pics/mouseOverPlay.png");
		exitHighlighted = new Image(
				"C:/Users/Dina/Documents/GameProject/pics/mouseOverExit.png");
	}

	public void render(GameContainer gc, StateBasedGame sbg, Graphics g)
			throws SlickException {
		background.draw();
		drawButtons();
	}

	public void update(GameContainer gc, StateBasedGame sbg, int delta)
			throws SlickException {
		int posX = Mouse.getX();
		int posY = Mouse.getY();

		// play button
		if ((posX > 300 && posX < 500) && (posY > 190 && posY < 250)) {
			overPlay = true;
			if (Mouse.isButtonDown(0)) {
				sbg.enterState(1);
			}
		}
		if (!((posX > 300 && posX < 500) && (posY > 190 && posY < 250))) {
			overPlay = false;
		}

		// exit game
		if ((posX > 300 && posX < 500) && (posY > 120 && posY < 180)) {
			overExit = true;
			if (Mouse.isButtonDown(0)) {
				System.exit(0);
			}
		}
		if (!((posX > 300 && posX < 500) && (posY > 120 && posY < 180))) {
			overExit = false;
		}
	}

	public void drawButtons() {
		playNow.draw(300, 250);
		exitGame.draw(300, 320);
		if (overPlay)
			playHighlighted.draw(300, 250);
		if (overExit)
			exitHighlighted.draw(300, 320);
	}
	
	public int getID() {
		return 0;
	}
}